package jpa.entitys.promis.common;

import java.io.Serializable;

import javax.persistence.*;

import java.math.BigDecimal;
import java.util.Date;


/**
 * The persistent class for the VW_SYNC_SITE_AP_DEDUCT database table.
 * 
 */
@Entity
@Table(name="VW_SYNC_SITE_AP_DEDUCT")
@NamedQueries({
    @NamedQuery(name = "VwSyncSiteApDeduct.findAll", query = " SELECT c FROM VwSyncSiteApDeduct c "),
    @NamedQuery(name = "VwSyncSiteApDeduct.findById", query = " SELECT c FROM VwSyncSiteApDeduct c WHERE c.siteMemoDeductionsId = :Id "),
    @NamedQuery(name = "VwSyncSiteApDeduct.findByStatus", query = " SELECT c FROM VwSyncSiteApDeduct c WHERE c.status = :status And c.syncIsstaging = :syncIsstaging "),
    @NamedQuery(name = "VwSyncSiteApDeduct.findByDocumentNo", query = " SELECT c FROM VwSyncSiteApDeduct c WHERE c.company = :company And c.project =:project And c.documentNo = :documentNo And c.status = :status And c.syncIsstaging = :syncIsstaging"),
    @NamedQuery(name = "VwSyncSiteApDeduct.findByDocumentNowithOutSync", query = " SELECT c FROM VwSyncSiteApDeduct c WHERE c.company = :company And c.project =:project And c.documentNo = :documentNo And c.status = :status")
})
public class VwSyncSiteApDeduct extends jpa.entitys.common.CommonEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	@Id
	@Column(name="SITE_MEMO_DEDUCTIONS_ID")
	private String siteMemoDeductionsId;
	
	@Override public String toString() { return org.apache.commons.lang.builder.ToStringBuilder.reflectionToString(this);}
	
	@Column(precision=16, scale=2)
	private BigDecimal amount;

	@Column(name="BEF_VAT_AMOUNT", precision=22)
	private BigDecimal befVatAmount;

	@Column(nullable=false, length=2)
	private String company;

	@Column(name="SITE_MEMO_CHARGE_DETAILS_ID")
	private String siteMemoChargeDetailsId;
	
	@Column(name="CONTRACT_REF_NO", length=4000)
	private String contractRefNo;

	@Column(name="CREATED_BY")
	private String createdBy;

	@Column(name="CREATED_BY_NAME", length=4000)
	private String createdByName;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="CREATED_ON")
	private Date createdOn;

	@Column(length=5)
	private String currency;

	@Column(name="DEPARTMENT_CODE", length=30)
	private String departmentCode;

	@Column(length=4000)
	private String description;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="DOCUMENT_REF_DATE")
	private Date documentRefDate;

	@Column(name="DOCUMENT_REF_NO", length=50)
	private String documentRefNo;

	@Column(name="EXCHANGE_RATE", precision=22)
	private BigDecimal exchangeRate;

	@Column(name="EXPENSE_CODE", length=15)
	private String expenseCode;

	@Column(name="HEADER_CHARGE_DESC", length=4000)
	private String headerChargeDesc;

	@Column(name="INTERFACE_NO", length=4000)
	private String interfaceNo;
	
	@Column(name="SYNC_ISSTAGING", length=1)
	private String syncIsstaging;

	@Column(name="LAST_UPD_BY")
	private String lastUpdBy;

	@Column(name="LAST_UPD_BY_NAME", length=4000)
	private String lastUpdByName;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="LAST_UPD_ON")
	private Date lastUpdOn;

	@Column(length=2000)
	private String narration;

	@Column(name="NET_AMT", precision=18, scale=2)
	private BigDecimal netAmt;

	@Column(name="PAYMENT_SOURCE", length=2)
	private String paymentSource;

	@Column(length=30)
	private String project;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="REFERENCE_DATE")
	private Date referenceDate;

	@Column(name="REFERENCE_NO", length=50)
	private String referenceNo;

	@Column(name="SAP_COMPANY_CODE", length=4000)
	private String sapCompanyCode;

	@Column(name="SAP_PLANT_CODE", length=4000)
	private String sapPlantCode;

	@Column(name="SEQ_NO", nullable=false, precision=3)
	private BigDecimal seqNo;

	@Column(name="SERVICE_VAT_FLAG", length=1)
	private String serviceVatFlag;	

	@Column(name="SITE_MEMO_HDR_ID", length=4000)
	private String siteMemoHdrId;

	@Column(length=1)
	private String status;

	@Column(name="SUPPLIER_CODE", length=30)
	private String supplierCode;

	@Column(name="SYNC_CREATEDBY", length=100)
	private String syncCreatedby;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="SYNC_CREATEDON")
	private Date syncCreatedon;

	@Column(name="SYNC_EXTERNAL_REF_KEY", length=100)
	private String syncExternalRefKey;

	@Column(name="SYNC_EXTERNAL_REF_NO", length=100)
	private String syncExternalRefNo;

	@Column(name="SYNC_ISSYNC", length=1)
	private String syncIssync;

	@Column(name="SYNC_UPDATEDBY", length=100)
	private String syncUpdatedby;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="SYNC_UPDATEDON")
	private Date syncUpdatedon;

	@Column(name="TAX_RATE", precision=22)
	private BigDecimal taxRate;

	@Column(name="TAX_TYPE", length=2)
	private String taxType;

	@Column(name="TAX_TYPE_CODE", length=2)
	private String taxTypeCode;

	@Column(name="TRANSACTION_CODE", length=5)
	private String transactionCode;

	@Column(name="UNIT_NUMBER", length=30)
	private String unitNumber;

	@Column(name="VAT_AMOUNT", precision=22)
	private BigDecimal vatAmount;

	@Column(name="VENDOR_CODE", length=30)
	private String vendorCode;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="VOUCHER_DATE")
	private Date voucherDate;

	@Column(name="VOUCHER_NUMBER", nullable=false, precision=6)
	private Long voucherNumber;

	@Column(name="VOUCHER_SERIES", nullable=false, length=4)
	private String voucherSeries;

	@Column(name="VOUCHER_TYPE", nullable=false, length=2)
	private String voucherType;

	@Column(name="WHT_AMOUNT", precision=22)
	private BigDecimal whtAmount;

	@Column(name="WHT_RATE", precision=22)
	private BigDecimal whtRate;

	@Column(name="WHT_TYPE", length=2)
	private String whtType;

	@Column(name="DOCUMENT_NO")
	private String documentNo;
	
	@Column(name="SYNC_PK_ID")
	private String syncPkId;	
	
	@Column(name="SPL_PAID_AMOUNT")
	private BigDecimal splPaidAmount;
	
	@Column(name="SUPPLIER_CODE_ITEM")
	private String supplierCodeItem;
	
    /**
	 * @return the supplierCodeItem
	 */
	public String getSupplierCodeItem() {
		return supplierCodeItem;
	}

	/**
	 * @param supplierCodeItem the supplierCodeItem to set
	 */
	public void setSupplierCodeItem(String supplierCodeItem) {
		this.supplierCodeItem = supplierCodeItem;
	}

	/**
	 * @return the siteMemoDeductionsId
	 */
	public String getSiteMemoDeductionsId() {
		return siteMemoDeductionsId;
	}

	/**
	 * @param siteMemoDeductionsId the siteMemoDeductionsId to set
	 */
	public void setSiteMemoDeductionsId(String siteMemoDeductionsId) {
		this.siteMemoDeductionsId = siteMemoDeductionsId;
	}

	/**
	 * @return the splPaidAmount
	 */
	public BigDecimal getSplPaidAmount() {
		return splPaidAmount;
	}

	/**
	 * @param splPaidAmount the splPaidAmount to set
	 */
	public void setSplPaidAmount(BigDecimal splPaidAmount) {
		this.splPaidAmount = splPaidAmount;
	}

	/**
	 * @return the syncPkId
	 */
	public String getSyncPkId() {
		return syncPkId;
	}

	/**
	 * @param syncPkId the syncPkId to set
	 */
	public void setSyncPkId(String syncPkId) {
		this.syncPkId = syncPkId;
	}

	/**
	 * @return the documentNo
	 */
	public String getDocumentNo() {
		return documentNo;
	}

	/**
	 * @param documentNo the documentNo to set
	 */
	public void setDocumentNo(String documentNo) {
		this.documentNo = documentNo;
	}
	
    /**
	 * @return the syncIsstaging
	 */
	public String getSyncIsstaging() {
		return syncIsstaging;
	}

	/**
	 * @param syncIsstaging the syncIsstaging to set
	 */
	public void setSyncIsstaging(String syncIsstaging) {
		this.syncIsstaging = syncIsstaging;
	}

	public VwSyncSiteApDeduct() {
    }

	public BigDecimal getAmount() {
		return this.amount;
	}

	public void setAmount(BigDecimal amount) {
		this.amount = amount;
	}

	public BigDecimal getBefVatAmount() {
		return this.befVatAmount;
	}

	public void setBefVatAmount(BigDecimal befVatAmount) {
		this.befVatAmount = befVatAmount;
	}

	public String getCompany() {
		return this.company;
	}

	public void setCompany(String company) {
		this.company = company;
	}

	public String getContractRefNo() {
		return this.contractRefNo;
	}

	public void setContractRefNo(String contractRefNo) {
		this.contractRefNo = contractRefNo;
	}

	public String getCreatedBy() {
		return this.createdBy;
	}

	public void setCreatedBy(String createdBy) {
		this.createdBy = createdBy;
	}

	public String getCreatedByName() {
		return this.createdByName;
	}

	public void setCreatedByName(String createdByName) {
		this.createdByName = createdByName;
	}

	public Date getCreatedOn() {
		return this.createdOn;
	}

	public void setCreatedOn(Date createdOn) {
		this.createdOn = createdOn;
	}

	public String getCurrency() {
		return this.currency;
	}

	public void setCurrency(String currency) {
		this.currency = currency;
	}

	public String getDepartmentCode() {
		return this.departmentCode;
	}

	public void setDepartmentCode(String departmentCode) {
		this.departmentCode = departmentCode;
	}

	public String getDescription() {
		return this.description;
	}

	public void setDescription(String description) {
		this.description = description;
	}

	public Date getDocumentRefDate() {
		return this.documentRefDate;
	}

	public void setDocumentRefDate(Date documentRefDate) {
		this.documentRefDate = documentRefDate;
	}

	public String getDocumentRefNo() {
		return this.documentRefNo;
	}

	public void setDocumentRefNo(String documentRefNo) {
		this.documentRefNo = documentRefNo;
	}

	public BigDecimal getExchangeRate() {
		return this.exchangeRate;
	}

	public void setExchangeRate(BigDecimal exchangeRate) {
		this.exchangeRate = exchangeRate;
	}

	public String getExpenseCode() {
		return this.expenseCode;
	}

	public void setExpenseCode(String expenseCode) {
		this.expenseCode = expenseCode;
	}

	public String getHeaderChargeDesc() {
		return this.headerChargeDesc;
	}

	public void setHeaderChargeDesc(String headerChargeDesc) {
		this.headerChargeDesc = headerChargeDesc;
	}

	public String getInterfaceNo() {
		return this.interfaceNo;
	}

	public void setInterfaceNo(String interfaceNo) {
		this.interfaceNo = interfaceNo;
	}

	public String getLastUpdBy() {
		return this.lastUpdBy;
	}

	public void setLastUpdBy(String lastUpdBy) {
		this.lastUpdBy = lastUpdBy;
	}

	public String getLastUpdByName() {
		return this.lastUpdByName;
	}

	public void setLastUpdByName(String lastUpdByName) {
		this.lastUpdByName = lastUpdByName;
	}

	public Date getLastUpdOn() {
		return this.lastUpdOn;
	}

	public void setLastUpdOn(Date lastUpdOn) {
		this.lastUpdOn = lastUpdOn;
	}

	public String getNarration() {
		return this.narration;
	}

	public void setNarration(String narration) {
		this.narration = narration;
	}

	public BigDecimal getNetAmt() {
		return this.netAmt;
	}

	public void setNetAmt(BigDecimal netAmt) {
		this.netAmt = netAmt;
	}

	public String getPaymentSource() {
		return this.paymentSource;
	}

	public void setPaymentSource(String paymentSource) {
		this.paymentSource = paymentSource;
	}

	public String getProject() {
		return this.project;
	}

	public void setProject(String project) {
		this.project = project;
	}

	public Date getReferenceDate() {
		return this.referenceDate;
	}

	public void setReferenceDate(Date referenceDate) {
		this.referenceDate = referenceDate;
	}

	public String getReferenceNo() {
		return this.referenceNo;
	}

	public void setReferenceNo(String referenceNo) {
		this.referenceNo = referenceNo;
	}

	public String getSapCompanyCode() {
		return this.sapCompanyCode;
	}

	public void setSapCompanyCode(String sapCompanyCode) {
		this.sapCompanyCode = sapCompanyCode;
	}

	public String getSapPlantCode() {
		return this.sapPlantCode;
	}

	public void setSapPlantCode(String sapPlantCode) {
		this.sapPlantCode = sapPlantCode;
	}

	public BigDecimal getSeqNo() {
		return this.seqNo;
	}

	public void setSeqNo(BigDecimal seqNo) {
		this.seqNo = seqNo;
	}

	public String getServiceVatFlag() {
		return this.serviceVatFlag;
	}

	public void setServiceVatFlag(String serviceVatFlag) {
		this.serviceVatFlag = serviceVatFlag;
	}

	public String getSiteMemoChargeDetailsId() {
		return this.siteMemoChargeDetailsId;
	}

	public void setSiteMemoChargeDetailsId(String siteMemoChargeDetailsId) {
		this.siteMemoChargeDetailsId = siteMemoChargeDetailsId;
	}

	public String getSiteMemoHdrId() {
		return this.siteMemoHdrId;
	}

	public void setSiteMemoHdrId(String siteMemoHdrId) {
		this.siteMemoHdrId = siteMemoHdrId;
	}

	public String getStatus() {
		return this.status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	public String getSupplierCode() {
		return this.supplierCode;
	}

	public void setSupplierCode(String supplierCode) {
		this.supplierCode = supplierCode;
	}

	public String getSyncCreatedby() {
		return this.syncCreatedby;
	}

	public void setSyncCreatedby(String syncCreatedby) {
		this.syncCreatedby = syncCreatedby;
	}

	public Date getSyncCreatedon() {
		return this.syncCreatedon;
	}

	public void setSyncCreatedon(Date syncCreatedon) {
		this.syncCreatedon = syncCreatedon;
	}

	public String getSyncExternalRefKey() {
		return this.syncExternalRefKey;
	}

	public void setSyncExternalRefKey(String syncExternalRefKey) {
		this.syncExternalRefKey = syncExternalRefKey;
	}

	public String getSyncExternalRefNo() {
		return this.syncExternalRefNo;
	}

	public void setSyncExternalRefNo(String syncExternalRefNo) {
		this.syncExternalRefNo = syncExternalRefNo;
	}

	public String getSyncIssync() {
		return this.syncIssync;
	}

	public void setSyncIssync(String syncIssync) {
		this.syncIssync = syncIssync;
	}

	public String getSyncUpdatedby() {
		return this.syncUpdatedby;
	}

	public void setSyncUpdatedby(String syncUpdatedby) {
		this.syncUpdatedby = syncUpdatedby;
	}

	public Date getSyncUpdatedon() {
		return this.syncUpdatedon;
	}

	public void setSyncUpdatedon(Date syncUpdatedon) {
		this.syncUpdatedon = syncUpdatedon;
	}

	public BigDecimal getTaxRate() {
		return this.taxRate;
	}

	public void setTaxRate(BigDecimal taxRate) {
		this.taxRate = taxRate;
	}

	public String getTaxType() {
		return this.taxType;
	}

	public void setTaxType(String taxType) {
		this.taxType = taxType;
	}

	public String getTaxTypeCode() {
		return this.taxTypeCode;
	}

	public void setTaxTypeCode(String taxTypeCode) {
		this.taxTypeCode = taxTypeCode;
	}

	public String getTransactionCode() {
		return this.transactionCode;
	}

	public void setTransactionCode(String transactionCode) {
		this.transactionCode = transactionCode;
	}

	public String getUnitNumber() {
		return this.unitNumber;
	}

	public void setUnitNumber(String unitNumber) {
		this.unitNumber = unitNumber;
	}

	public BigDecimal getVatAmount() {
		return this.vatAmount;
	}

	public void setVatAmount(BigDecimal vatAmount) {
		this.vatAmount = vatAmount;
	}

	public String getVendorCode() {
		return this.vendorCode;
	}

	public void setVendorCode(String vendorCode) {
		this.vendorCode = vendorCode;
	}

	public Date getVoucherDate() {
		return this.voucherDate;
	}

	public void setVoucherDate(Date voucherDate) {
		this.voucherDate = voucherDate;
	}

	public Long getVoucherNumber() {
		return this.voucherNumber;
	}

	public void setVoucherNumber(Long voucherNumber) {
		this.voucherNumber = voucherNumber;
	}

	public String getVoucherSeries() {
		return this.voucherSeries;
	}

	public void setVoucherSeries(String voucherSeries) {
		this.voucherSeries = voucherSeries;
	}

	public String getVoucherType() {
		return this.voucherType;
	}

	public void setVoucherType(String voucherType) {
		this.voucherType = voucherType;
	}

	public BigDecimal getWhtAmount() {
		return this.whtAmount;
	}

	public void setWhtAmount(BigDecimal whtAmount) {
		this.whtAmount = whtAmount;
	}

	public BigDecimal getWhtRate() {
		return this.whtRate;
	}

	public void setWhtRate(BigDecimal whtRate) {
		this.whtRate = whtRate;
	}

	public String getWhtType() {
		return this.whtType;
	}

	public void setWhtType(String whtType) {
		this.whtType = whtType;
	}

}